#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <sys/stat.h>
#include "../head/default.h"         //define 宏定义及static变量
#include "../head/log.h"             //my_log.c所需头文件
void f_logging(enum LogLevel level, const char *fmt, ...);
int f_create_dir(char str[]) {
    //判断目录是否存在, 不存在就创建, 路径要求以/结尾
    char dir[VAR_MAX_LEN];
    strcpy(dir, str);
    int i;
    size_t len = strlen(dir);
    for(i = 1; i < len; i++) {
        if(dir[i] == '/') {
            dir[i] = 0;
            if(access(dir, 0) != 0) {
                if(mkdir(dir, 0755) == -1) {
                    char log_info[VAR_MAX_LEN];
                    sprintf(log_info, "[%s] mkdir dir error!", dir);
                    f_logging(ERROR, log_info);
                    return -1;
                }
            }
            dir[i] = '/';
        }
    }
    return 0;
}
